package com.xb.sourest.adapter;

import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;

import com.ocnyang.cartlayout.viewholder.CartViewHolder;
import com.xb.sourest.R;
import com.xb.sourest.bean.ShopGoodsBean;
import com.xb.sourest.view.NumberAddSubtractLayout;


public abstract class NomalViewHolder extends CartViewHolder implements View.OnClickListener {
    public LinearLayout ll_child_bg;
  //  public TextView textViewReduce;
    public TextView textView;
    public TextView textViewPrice;
    public NumberAddSubtractLayout addSubtractLayout;
  //  public TextView textViewNum;
//    public TextView textViewAdd;

    public NomalViewHolder(View itemView, int chekbox_id) {
        super(itemView, chekbox_id);

        ll_child_bg = itemView.findViewById(R.id.ll_child_bg);
        textView = itemView.findViewById(R.id.tv);
        textViewPrice = itemView.findViewById(R.id.tv_price);
        addSubtractLayout = itemView.findViewById(R.id.number_addsubtract_button_default);
        /*textViewReduce = ((TextView) itemView.findViewById(R.id.tv_reduce));
        textViewNum = itemView.findViewById(R.id.tv_num);
        textViewAdd = itemView.findViewById(R.id.tv_add);*/

        itemView.setOnClickListener(this);
        addSubtractLayout.setChangeNumberListener(new NumberAddSubtractLayout.ChangeNumberListener() {
            @Override
            public void onChangeNumber(int number) {
                ((ShopGoodsBean) mICartItem).setGoods_amount(number);
                onNeedCalculate();
            }
        });
    //    textViewReduce.setOnClickListener(this);
     //   textViewAdd.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
       /* switch (v.getId()) {

            case R.id.tv_reduce:
                int intValue = Integer.valueOf(textViewNum.getText().toString()).intValue();
                if (intValue > 1) {
                    intValue--;
                    textViewNum.setText(String.valueOf(intValue));
                    ((ShopGoodsBean) mICartItem).setGoods_amount(intValue);
                    onNeedCalculate();
                }else {
                    Toast.makeText(v.getContext(), "已经最低数量了", Toast.LENGTH_SHORT).show();
                }
                break;
            case R.id.tv_add:
                int intValue2 = Integer.valueOf(textViewNum.getText().toString()).intValue();
                intValue2++;
                textViewNum.setText(String.valueOf(intValue2));
                ((ShopGoodsBean) mICartItem).setGoods_amount(intValue2);
                onNeedCalculate();
                break;
            default:
                break;
        }*/
    }

    /**
     * 这里因为把 ViewHolder 没有写到 adapter 中作为内部类，所以对事件写了一个回调的抽象方法。
     * 如果不想这样写，你可以在以下方式中选其一：
     * 1. 将 ViewHolder 写到 Adapter 中作为内部类，这样你就可以访问 Adapter 中的一些方法属性了；
     * 2. 或者，你把 ItemView & ItemChildView 的事件放到 Adapter 中的 onBindViewHolder() 方法中设置。
     */
    public abstract void onNeedCalculate();
}
